set(ASN_MODULE_SRCS
    AMFPointer.c
    AMFRegionID.c
    AMFSetID.c
    AMF-UE-NGAP-ID.c
    asn_application.c
    asn_bit_data.c
    asn_codecs_prim.c
    asn_internal.c
    asn_random_fill.c
    asn_SEQUENCE_OF.c
    asn_SET_OF.c
    ber_decoder.c
    ber_tlv_length.c
    ber_tlv_tag.c
    BinIndex.c
    BinRangeDefinition.c
    BinRangeItem.c
    BinRangeList.c
    BinRangeValue.c
    BIT_STRING.c
    BOOLEAN.c
    CGI.c
    constraints.c
    constr_CHOICE.c
    constr_SEQUENCE.c
    constr_SEQUENCE_OF.c
    constr_SET_OF.c
    constr_TYPE.c
    CoreCPID.c
    der_encoder.c
    DistMeasurementBinRangeItem.c
    DistMeasurementBinRangeList.c
    E2SM-KPM-ActionDefinition.c
    E2SM-KPM-ActionDefinition-Format1.c
    E2SM-KPM-ActionDefinition-Format2.c
    E2SM-KPM-ActionDefinition-Format3.c
    E2SM-KPM-ActionDefinition-Format4.c
    E2SM-KPM-ActionDefinition-Format5.c
    E2SM-KPM-EventTriggerDefinition.c
    E2SM-KPM-EventTriggerDefinition-Format1.c
    E2SM-KPM-IndicationHeader.c
    E2SM-KPM-IndicationHeader-Format1.c
    E2SM-KPM-IndicationMessage.c
    E2SM-KPM-IndicationMessage-Format1.c
    E2SM-KPM-IndicationMessage-Format2.c
    E2SM-KPM-IndicationMessage-Format3.c
    E2SM-KPM-RANfunction-Description.c
    ENB-ID.c
    ENB-UE-X2AP-ID.c
    ENB-UE-X2AP-ID-Extension.c
    EN-GNB-ID.c
    E-UTRA-ARFCN.c
    EUTRACellIdentity.c
    EUTRA-CGI.c
    E-UTRA-PCI.c
    E-UTRA-TAC.c
    FiveGS-TAC.c
    FiveQI.c
    FreqBandNrItem.c
    GlobalENB-ID.c
    GlobalenGNB-ID.c
    GlobalGNB-ID.c
    GlobalNgENB-ID.c
    GlobalNGRANNodeID.c
    GNB-CU-CP-UE-E1AP-ID.c
    GNB-CU-UE-F1AP-ID.c
    GNB-CU-UP-ID.c
    GNB-DU-ID.c
    GNB-ID.c
    GranularityPeriod.c
    GroupID.c
    GUAMI.c
    GUMMEI.c
    IndexToRFSP.c
    INTEGER.c
    InterfaceID-E1.c
    InterfaceIdentifier.c
    InterfaceID-F1.c
    InterfaceID-NG.c
    InterfaceID-S1.c
    InterfaceID-W1.c
    InterfaceID-X2.c
    InterfaceID-Xn.c
    Interface-MessageID.c
    InterfaceType.c
    LabelInfoItem.c
    LabelInfoList.c
    LogicalOR.c
    MatchingCondItem.c
    MatchingCondItem-Choice.c
    MatchingCondList.c
    MatchingUeCondPerSubItem.c
    MatchingUeCondPerSubList.c
    MatchingUEidItem.c
    MatchingUEidItem-PerGP.c
    MatchingUEidList.c
    MatchingUEidList-PerGP.c
    MatchingUEidPerGP.c
    MatchingUEidPerGP-Item.c
    MatchingUEidPerSubItem.c
    MatchingUEidPerSubList.c
    MeasurementCondItem.c
    MeasurementCondList.c
    MeasurementCondUEidItem.c
    MeasurementCondUEidList.c
    MeasurementData.c
    MeasurementDataItem.c
    MeasurementInfo-Action-Item.c
    MeasurementInfo-Action-List.c
    MeasurementInfoItem.c
    MeasurementInfoList.c
    MeasurementLabel.c
    MeasurementRecord.c
    MeasurementRecordItem.c
    MeasurementType.c
    MeasurementTypeID.c
    MeasurementTypeName.c
    MME-Code.c
    MME-Group-ID.c
    MME-UE-S1AP-ID.c
    NativeEnumerated.c
    NativeInteger.c
    NativeReal.c
    NGENB-CU-UE-W1AP-ID.c
    NGENB-DU-ID.c
    NgENB-ID.c
    NG-RANnodeUEXnAPID.c
    NR-ARFCN.c
    NRCellIdentity.c
    NR-CGI.c
    NRFrequencyBandItem.c
    NRFrequencyBand-List.c
    NRFrequencyInfo.c
    NRFrequencyShift7p5khz.c
    NR-PCI.c
    NULL.c
    OCTET_STRING.c
    OPEN_TYPE.c
    per_decoder.c
    per_encoder.c
    per_opentype.c
    per_support.c
    PLMNIdentity.c
    PrintableString.c
    QCI.c
    QosFlowIdentifier.c
    QoSID.c
    RANfunction-Name.c
    RANUEID.c
    REAL.c
    RIC-EventTriggerStyle-Item.c
    RIC-Format-Type.c
    RIC-ReportStyle-Item.c
    RIC-Style-Name.c
    RIC-Style-Type.c
    RRCclass-LTE.c
    RRCclass-NR.c
    RRC-MessageID.c
    SD.c
    ServingCell-ARFCN.c
    ServingCell-PCI.c
    S-NSSAI.c
    SST.c
    SubscriberProfileIDforRFP.c
    SupportedSULBandList.c
    SupportedSULFreqBandItem.c
    TestCond-Expression.c
    TestCondInfo.c
    TestCond-Type.c
    TestCond-Value.c
    TimeStamp.c
    UEID.c
    UEID-ENB.c
    UEID-EN-GNB.c
    UEID-GNB.c
    UEID-GNB-CU-CP-E1AP-ID-Item.c
    UEID-GNB-CU-CP-E1AP-ID-List.c
    UEID-GNB-CU-CP-F1AP-ID-Item.c
    UEID-GNB-CU-F1AP-ID-List.c
    UEID-GNB-CU-UP.c
    UEID-GNB-DU.c
    UEID-NG-ENB.c
    UEID-NG-ENB-DU.c
    UEMeasurementReportItem.c
    UEMeasurementReportList.c
    xer_decoder.c
    xer_encoder.c
    xer_support.c
)


add_library(e2sm_kpm_asn1_obj OBJECT ${ASN_MODULE_SRCS})
target_include_directories(e2sm_kpm_asn1_obj
                          PUBLIC
                           "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>"
                           )

target_compile_options(e2sm_kpm_asn1_obj PUBLIC "-DASN_DISABLE_OER_SUPPORT")
target_compile_options(e2sm_kpm_asn1_obj PRIVATE -Wno-missing-field-initializers -Wno-unused-parameter -fPIC)

